/**
 * 发送GET请求
 * 技术栈：function+ajax+callback
 * @param{String} url 请求地址
 * @param{String} params 请求参数  格式：参数名=值&参数名=值
 * @param{Function} callback 回调函数
 * @param{Function} headersFn 自定义请求头
 * @return undifined
 */
 function get(url,params,callback,headers={},datatype='json'){
    const xhr=new XMLHttpRequest
    xhr.onreadystatechange=function(){
       if(xhr.readyState===4){
           if(xhr.status===200){
                let res=xhr.responseText
                switch(datatype){
                    case 'json':
                    res=JSON.parse(res)
                    break;
                    default:
                    break;
                }
                callback(res)
           }else{
               console.log(xhr.status);
               
           }
       }    
    }
    xhr.open('get',`${url}?${params}`)
    for(let key in headers){
        xhr.setRequestHeader(key,headers[key])
    }
    xhr.send(null)
 }


  /**
    *发送POST请求
    * 技术栈：function+ajax+callback
    * @param{String} url 请求地址
    * @param{String} params 请求参数  格式：参数名=值&参数名=值
    * @param{Function} callback 回调函数
    * @param{Function} headersFn 自定义请求头
     * @return undifined
   */
  function post(url,params,callback,headers={},datatype='json'){
    const xhr=new XMLHttpRequest
    xhr.onreadystatechange=function(){
       if(xhr.readyState===4){
           if(xhr.status===200){
                let res=xhr.responseText
                switch(datatype){
                    case 'json':
                    res=JSON.parse(res)
                    break;
                    default:
                    break;
                }
               
                callback(res)
           }else{
               console.log(xhr.status);
               
           }
       }    
    }
    xhr.open('post',`${url}`)
    xhr.setRequestHeader('content-type','application/x-www-form-urlencoded')
    for(let key in headers){
        xhr.setRequestHeader(key,headers[key])
    }
    xhr.send(`${params}`)
 }